mod config_branch;
mod io;
mod memory;
mod time;
mod utils;

pub mod prelude {
    #[allow(unused_imports)]
    pub use crate::memory::{read_memory_to_vec, read_variable_to_vec, size_of};
    #[allow(unused_imports)]
    pub use crate::time::{
        timeit, timeit_repeat, timeit_silent, timeit_silent_repeat, wait_micros, wait_millis,
        wait_nanos, wait_secs,
    };
    #[allow(unused_imports)]
    pub use crate::utils::{is_instance_of, type_of};
}

#[cfg(test)]
mod tests {

    use std::io::stdin;

    use memory::{read_memory_to_vec, read_variable_to_vec, size_of};
    use time::timeit_repeat;

    use super::*;

    #[test]
    fn it_works() {
        timeit_repeat!();
    }
}
